package com.maycur.ctrip.enumeration;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by JoeyXin on 2/25/16.
 */
public enum FeeDynamicFieldCode {
    ACCOM_CONSUMPTION_PLATFORM("1", "消费平台"),
    ACCOM_HOTEL_NAME("2", "商家"),
    ACCOM_CHECKED_IN_TIME("3", "入住时间"),
    ACCOM_CHECKED_OUT_TIME("4", "离开时间"),
    ACCOM_ROOM_NAME("5", "房型"),
    ACCOM_ROOM_DAYS("6", "住宿间夜"),

    AIRFARE_CONSUMPTION_PLATFORM("13", "消费平台"),
    AIRFARE_DEPARTURE_CITY("14", "出发城市"),
    AIRFARE_ARRIVAL_CITY("15", "目的城市"),
    AIRFARE_DEPARTURE_TIME("16", "出发时间"),
    AIRFARE_ARRIVAL_TIME("17", "抵达时间"),
    AIRFARE_FLIGHT_NO("18", "航班号"),
    AIRFARE_CLASS_NAME("19", "舱位级别"),

    TRAIN_CONSUMPTION_PLATFORM("27", "消费平台"),
    TRAIN_DEPARTURE_CITY("28", "出发城市"),
    TRAIN_ARRIVAL_CITY("29", "目的城市"),
    TRAIN_DEPARTURE_TIME("30", "出发时间"),
    TRAIN_ARRIVAL_TIME("31", "抵达时间"),
    TRAIN_CLASS_NAME("32", "座位类别");

    private String code;
    private String desc;

    FeeDynamicFieldCode(String code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    public static List<FeeDynamicFieldCode> getAccomFieldCodes() {
        List<FeeDynamicFieldCode> dynamicFieldCodeList = new ArrayList<>();
        dynamicFieldCodeList.add(FeeDynamicFieldCode.ACCOM_CONSUMPTION_PLATFORM);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.ACCOM_HOTEL_NAME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.ACCOM_CHECKED_IN_TIME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.ACCOM_CHECKED_OUT_TIME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.ACCOM_ROOM_NAME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.ACCOM_ROOM_DAYS);

        return dynamicFieldCodeList;
    }

    public static List<FeeDynamicFieldCode> getAirfareFieldCodes() {
        List<FeeDynamicFieldCode> dynamicFieldCodeList = new ArrayList<>();
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_CONSUMPTION_PLATFORM);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_DEPARTURE_CITY);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_ARRIVAL_CITY);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_DEPARTURE_TIME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_ARRIVAL_TIME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_FLIGHT_NO);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.AIRFARE_CLASS_NAME);

        return dynamicFieldCodeList;
    }

    public static List<FeeDynamicFieldCode> getTrainFieldCodes() {
        List<FeeDynamicFieldCode> dynamicFieldCodeList = new ArrayList<>();
        dynamicFieldCodeList.add(FeeDynamicFieldCode.TRAIN_CONSUMPTION_PLATFORM);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.TRAIN_DEPARTURE_CITY);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.TRAIN_ARRIVAL_CITY);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.TRAIN_DEPARTURE_TIME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.TRAIN_ARRIVAL_TIME);
        dynamicFieldCodeList.add(FeeDynamicFieldCode.TRAIN_CLASS_NAME);

        return dynamicFieldCodeList;
    }

    public String getCode() {
        return code;
    }

    public String getDesc() {
        return desc;
    }

}
